const mysql2 = require("mysql2")
// 连接mysql数据库
var db = mysql2.createConnection({
    host: 'localhost',
    port: '3306',
    user: 'root',
    password: 'root',
    database: 'rbac_test'
})

// 判断数据库连接是否成功
db.connect(function (err) {
    if (err) {
        console.log('数据库连接失败:' + err);
    } else {
        console.log('[connection connect] Mysql数据连接成功!')
    }
});
// 定义一个名为query的函数，它接受两个参数：sql和params
const query = (sql, params) => {
    // 返回一个新的Promise对象
    return new Promise((resolve, reject) => {
        // 使用db.query方法执行SQL查询，db是预先配置好的数据库连接对象
        db.query(sql, params, (err, results) => {
            // 如果在执行SQL查询时发生错误，调用reject函数，并将错误对象err传递给它
            console.log('执行的sql、参数：',sql,params,'\n')
            if (err) {
                reject(err)
            } else {
                // 如果没有错误发生，调用resolve函数，并将查询结果results传递给它
                resolve(results)
            }
        })
    })
}

module.exports = {
    query,
    db
};